import { createApp } from 'vue'
import App from './App.vue'
import ElementPlus from 'element-plus' // 引入ElementPlus
import 'element-plus/dist/index.css'  // 引入ElementPlus 的CSS
import * as Icons from '@element-plus/icons-vue' // 导入所有的icon的图标
import zhCn from 'element-plus/es/locale/lang/zh-cn' // 导入ElmentPlus中文语言包
import router from './router' // 导入路由匹配的类 
import store from './store'  // 导入vuex中的store对象
import SlideVerify from 'vue-monoplasty-slide-verify/src/lib/index' // 引入滑块验证
import ECharts from 'vue-echarts' // 引入vue-echarts组件 
import 'echarts'



// 实例化一个app
const app = createApp(App)

app.component('e-charts', ECharts).use(router).use(store).use(SlideVerify).use(ElementPlus, {locale: zhCn,}).mount('#app')

// 遍历所有的icon,把每个icon图标以组件的方式加载到app中 
Object.keys(Icons).forEach((key) =>{
    app.component(key, Icons[key as keyof typeof Icons])
})

